package com.sh.数组;

import java.util.Arrays;

/**
 * @Auther: sh
 * @Version 1.0
 * @Description:
 */
public class 移除元素 {
    public static void main(String[] args) {

        int[] nums = new int[]{3, 2, 2, 3};
        System.out.println(removeElement(nums, 3));

    }


    public static int removeElement(int[] nums, int val) {
//        for (int i = 0; i < nums.length; i++) {
//            if (nums[i] == val) {
//                nums[i] = -1;
//            }
//        }
//        int slow = 0;
//        for (int i = 0; i < nums.length; i++) {
//           if (nums[i]!=-1){
//               nums[slow] = nums[i];
//               slow++;
//           }
//        }
//        Arrays.stream(nums).forEach(one -> System.out.print(one+"\t"));

        int  slow=0;
        for (int fast = 0; fast < nums.length; fast++) {
            if (nums[fast]!=val){
                nums[slow] = nums[fast];
                slow++;
            }
        }

        return slow;

    }
}

